
package mx.its.dsw2.vista;

import java.util.List;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.event.ActionEvent;
import mx.its.dsw2.biblioteca.Bl.UsuarioBlLocal;
import mx.its.dsw2.biblioteca.Modelo.Usuario;

/**
 *
 * @author Yessy
 */
@ManagedBean
@SessionScoped
public class UserBean {
    @EJB
    private UsuarioBlLocal usuarioBl;

    //variables locales
    private List<Usuario> lista;
    private Usuario user;
    private String accion;
    
    public UserBean() {
    }
    //get y set

    public Usuario getUser() {
        return user;
    }

    public void setUser(Usuario user) {
        this.user = user;
    }

    public List<Usuario> getLista() {
         lista = usuarioBl.getAll();
        return lista;
    }
    
     public String procesarAccion() {
        if(accion.equalsIgnoreCase("Nuevo")){
        usuarioBl.register(user);
                }else{
        if(accion.equalsIgnoreCase("Editar")){
        usuarioBl.modify(user);
        }
        else{
        if(accion.equalsIgnoreCase("Eliminar")) {
                usuarioBl.delete(user);
            }
        }
        }

        return "UsuarioLista";
    }

    //Listeners
    public void prepararNuevoRegistro(ActionEvent evt) {
        accion="Nuevo";
        user = new Usuario();
    }
   public void prepararEditar(ActionEvent evt) {
       accion="Editar";
      System.out.println(evt.getComponent().getClientId());        
        int index=Integer.parseInt(evt.getComponent().getClientId().split(":")[2]);
        user=lista.get(index);
    } 
   public void prepararEliminar(ActionEvent evt){
   accion="Eliminar";
   System.out.println(evt.getComponent().getClientId());
    int index=Integer.parseInt(evt.getComponent().getClientId().split(":")[2]);
        user=lista.get(index);
   
   }
    
}
